1. Field of the Invention
This invention relates generally to an error correction method, and more particularly to such a method which is capable of successfully correcting burst errors which possibly occur over a plurality of rows or columns of product-coded data while the product-coded data is sequentially transmitted along the row direction or column direction.
2. Description of the Prior Art
There is known in the art a method in which digital data is product-coded in order to correct data errors which will be caused when the digital data is transmitted (including recording/reproducing) through a transmission path. The product-coded data is such that a predetermined quantity or number of data to be transmitted are arranged in a two-dimensional array. A first error correcting code (hereinafter called "a C.sub.1 parity") for correcting errors possibly occurring in the row direction of the two-dimensional array data is generated, a second error correcting code (hereinafter called "a C.sub.2 parity") for correcting errors possibly occurring in the column direction of the two-dimensional array data is generated, and the first and second error correcting codes are added to the two-dimensional array data. The product-coded data thus formed is sequentially delivered, e.g. along the row direction, to a transmission path.
Since the C.sub.2 parity is formed, e.g. of a two-byte Reed-Solomon code, it can detect and correct one symbol error as well as effect an erasure correction on up to 2-symbol errors. Let it now be assumed that while the product-coded data is sequentially transmitted along the row direction, a burst error occurs over 3 rows so that this burst error can no longer be corrected by the use of the C.sub.1 parity. On such an occasion, a flag indicative of a data error is set to all data allocated in each of the rows containing the error. However, the C.sub.2 parity can be applied to effect an erasure correction on up to 2-symbol errors only so that if a flag which indicates that there occurs a 3-symbol error is set to each data in the column direction, the erasure correction can no longer be effected on them by the C.sub.2 parity.